iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 20
0
自我挑戰組

用 laravel 尻出自己形狀的 line bot,還要撐三十天!系列 第 20

【第二十天】我們也來試試看Docker

  • 分享至 

  • xImage
  •  

【第二十天】我們也來試試看Docker

昨天稍微提到我們的測試再跑測試時,掛載DatabaseTransactions的Trait時會噴錯誤,為了解決這問題,我們就趁這機會也來學習一下什麼是Docker吧!

有了些基本認知後來做點什麼吧!

首先先安裝好你的Docker

接下來請先pull mysql

docker pull mysql

先照著官方範例輸入

docker run --name <你要起的容器名字> -e MYSQL_ROOT_PASSWORD=<你的資料庫密碼> -d -p <本基的port>:<容器的port> mysql:latest

如果你本身就有在跑MySQL的話會發現他打架了,會跳出下列的訊息

test@ubuntu:~$ docker run --name docker-mysql -e MYSQL_ROOT_PASSWORD=password -d -p 3306:3306 mysql:latest
7837dd340a874076234b8d4b0ae71e02cfaa67464fb2dc7cee863ae00ad78209
docker: Error response from daemon: driver failed programming external connectivity on endpoint docker-mysql (5a4cbcfda178ebbe5eb2f409213beb7d90107c18eb305b2867f48ea34245a432): Error starting userland proxy: listen tcp 0.0.0.0:3306: bind: address already in use.

這時候請先把你原本的MySQL給stop即可

sudo /etc/init.d/mysql stop

當你順利看到下圖後,就可以往下一步邁進!
https://ithelp.ithome.com.tw/upload/images/20171226/20107380d7FTiGabwa.png

試著輸入

docker exec -it <你起的容器名字> bash

你就會發現你進到了你起的容器裡面了!可以試著把它想成是一個很小的虛擬機,裡面跑著MySQL的服務!
所以你也可以在裡面下

mysql -uroot -p
接著輸入你剛剛在起容器時輸入的密碼

沒錯!你就順利進入了你創的小宇宙裡面的MySQL!
是否很神奇呢!
https://ithelp.ithome.com.tw/upload/images/20171226/20107380IBlzNSEuWN.png

題外話!
深入了解之後發現Docker真的是很大一個坑,要學習要看的東西有太多了,
感覺會花很多的時間在瞭解它,希望接下來的進度可以順利學習啊~


上一篇
【第十九天】平安夜就來完成第一隻SlashCommand吧!
下一篇
【第二十一天】衝刺吧!Docker!還是TravisCI?
系列文
用 laravel 尻出自己形狀的 line bot,還要撐三十天!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言